#ifndef DELAYON_H_
#define DELAYON_H_

#include "../../SAMA_Function.h"

/*模块可调参数结构体*/
typedef struct {

}DELAYON_Par_t;

typedef struct {
	float T;                    //<计时时间
	float Last_DeylayTime;
	bool Last_Enable;		    //< 上一次使能信号
	bool Alarm;
}DELAYON_Sta_t;

/*模块参数结构体定义*/
struct DELAYON_T
{
	Model_Base_t Base;		//< 模块基本参数结构体
	DELAYON_Par_t Par;		//< 模块可调参数结构体
	DELAYON_Sta_t Sta;
};


extern DELAYON_T* DELAYON_t;

/*函数*/
bool CALCU_SAMA(DELAYON)(Model_Base_t* arg, float dt, bool* DI, bool* DO, float* AI, float* AO);	//< SAMA运算函数
int BC_PARA(DELAYON)(Model_Base_t* arg, void** Data);											//< 广播SAMA参数变量函数（无参数需要广播的模块直接将BCPara函数设置为NULL即可）
int BAK_STA(DELAYON)(Model_Base_t* arg, void** Data);												//< 备份SAMA运算中间参数
int ANA_STA(DELAYON)(Model_Base_t* arg, void** Data);												//< 解析备份的SAMA运算中间参数
int CHANGE_PAR(DELAYON)(Model_Base_t* arg, void** Data);											//< 在线修改模块参数函数
void INIT_STAPAR(DELAYON)(Model_Base_t* arg);														//< 初始化模块运算中间参数

#endif
